package cnsukidayo.com.gitee.service;

import cnsukidayo.com.gitee.model.params.*;
import cnsukidayo.com.gitee.model.pojo.Pet;
import cnsukidayo.com.gitee.model.pojo.PetShelter;
import cnsukidayo.com.gitee.model.vo.PetShelterVO;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Optional;

/**
 * @author sukidayo
 * @date 2023/3/26 10:07
 */
public interface PetShelterService {

    int login(LoginParam loginParam, HttpServletResponse httpServletResponse);

    PetShelter getPetShelterInfo(int id);

    Optional<Integer> queryPetShelterIDByToken(String token);

    void addPetToShelter(Integer idReq, CreatePetParam createPetParam);

    void addPetLog(String token, AddPetLogParam addPetLogParam);

    // contextAPI
    void createPetShelter(CreatePetShelterParam createPetStoreParam);

    List<PetShelterVO> queryPetShelterWithPage(QueryPageParam queryPageParam);

    List<Pet> queryPetWithPage(PetQueryPageParam petQueryPageParam);

    String queryPetLog(QueryPetLogParam queryPetLogParam);

    void purchaseSupplies(String token, PurchaseSuppliesParam purchaseSuppliesParam);
}
